package com.vhans.db.service;

import com.vhans.db.model.dto.ConditionDTO;
import com.vhans.db.model.dto.base.BaseDTO;
import com.vhans.db.model.vo.base.BaseInfoVO;
import com.vhans.db.model.vo.base.BaseVO;

import java.util.List;

/**
 * 基本属性Service接口
 * 
 * @author vhans
 * @date 2023-05-20
 */
public interface IBaseService {

    /**
     * 查询基本属性列表
     * 
     * @param condition 条件
     * @return 基本属性集合
     */
    List<BaseVO> selectBaseVOList(ConditionDTO condition);

    /**
     * 新增基本属性
     * 
     * @param base 基本属性
     * @return 插入id
     */
    int insertBase(BaseDTO base);

    /**
     * 获取基本属性编辑信息
     *
     * @param id 基本属性主键
     * @return 基本属性
     */
     BaseInfoVO selectBaseInfoById(Integer id);

    /**
     * 修改基本属性
     * 
     * @param base 基本属性
     */
    void updateBase(BaseDTO base);

    /**
     * 批量删除基本属性
     * 
     * @param idList 需要删除的基本属性主键列表
     * @return 影响行
     */
    int deleteBaseByIdIdList(List<Integer> idList);
}
